Integrated circuits (IC) are well known in the field of electronics and often incorporate millions of individual electronic components onto a single substrate. Designing such IC's with their millions of components and the corresponding millions of connections, can be very time consuming and expensive, as well as the testing of a new design. Therefore it is desirable to reuse existing designs, or portions of existing designs, when designing a new IC.
Different types of circuits have been designed for IC's, which perform a general function. An example of these different types of circuits, are processors, memory devices, programmable logic devices (PLD) and analogue to digital convertors (A/D). These types of circuits are further subdivided into subtypes with different features. The different types of circuits are often formed into individual IC's, mounted on a printed circuit board and connected to each other for a specific application.
More recently, Application Specific Integrated Circuits (ASIC) are being designed where a single substrate contains several different types of circuits in a particular combination which has been designed for a specific application. Existing designs for the different types of circuits are combined into one integrated circuit to make the ASIC. In this way, only the design and testing of the connections between the known types of circuits is necessary, and not the design and testing of all of the individual components of an integrated circuit.